1. Field of the Invention
The present invention relates generally to a navigation controller provided in a navigation apparatus for performing route guidance, and more particularly to a controller capable of swifter calculation processing route for use i n rout e guidance.
2. Description of the Related Art
Navigation apparatuses using map data for route guidance are well known. As its basic function, such a navigation apparatus has a route calculation function. During route calculation, map data is used to find a proper route from a starting point up to a destination. One common route calculation technique is the Dijkstra algorithm in which a calculation condition such as the shortest distance or the shortest time is designated and a route satisfying the calculation condition. The thus calculated route is then used for route guidance. While a variety of route guiding methods are proposed, typically, a map around a current position appears on a display, with the current position indicated on the map. In addition, a set route is indicated on the map in a way to distinguish it from other roads. Output in the form of voice guidance from a speaker is also used.
In recent years, navigation apparatuses for motor vehicles have particularly rapidly become common. A navigation apparatus for a motor vehicle is an indispensable supporting technique for ITS (intelligent transport system) intended to develop the transportation system through the provision of various useful information to the vehicles.
Such a navigation commonly apparatus commonly includes a variety of constituent elements such as a sensor for detecting a current position, a map data base, a display and a speaker serving as output devices, and input devices including switches, an FM multiplex or VICS receiver, and so forth. In order to control these elements, a controller comprising a microcomputer unit is commonly provided. The controller provides control signals as its output to the various elements to be controlled. The controller internally performs route calculation, various other calculation processing necessary for route guidance.
FIG. 1 illustrates a configuration of a controller 100 provided in a typical conventional navigation apparatus. The controller 100 has a general purpose CPU 102 and a program memory 104. The initial general purpose CPU 102 was commonly of a 16-bit type, but currently a 32-bit RISC processor is often used. The general purpose CPU 102 controls the navigation apparatus through the execution of the navigation program stored in the program memory 104.
The navigation program stored in the program memory 104 consists of a plurality of program modules. A basic control program controls all general actions of the navigation apparatus. The execution of this program allows almost all navigation actions, including input and setting of the destination, to be controlled. In addition to the basic control program, other programs are stored in which processing requiring special operations is modularized. A route calculation processing program decides on a route between a starting point and a destination. A graphics processing program draws an image on the display. A voice expansion program expands compressed voice data stored in a storage medium. Hereinafter, programs other than the basic control program, such as the graphics processing program or the voice expansion program will be collectively referred to as "accompanying programs".
For the conventional controller 100, the single general purpose CPU 102 exclusively manages and executes all processing of the navigation program. The general purpose CPU 102 is highly versatile in dealing with various processing and is advantageously able to perform various navigation processing. In contrast with this, it is disadvantageous in that it takes significant amount of time to perform processing such as route calculation because route calculation requires product-sum operations of the data in the map data base to find an optimum route, while the general-purpose CPU 102 is not adept at such processing.
In fact, although the required route calculation time naturally varies for each navigation apparatus, most apparatuses now require several tens of seconds. Reducing the wait time up to the completion of the route calculation is greatly desired in order to enhance the market value of such devices. Taking into consideration the time taken to read map data from the record medium, it is ideally desirable to reduce the calculation time to about one second. However, such high-speed route calculation has not been realized by any known art.
Also, in a conventional navigation apparatus, small streets in residential areas and the like are not considered as route candidates. It is, however, desired that navigation apparatuses be able to plan a route including such streets in order to improve their function and to improve total traffic efficiency and safety. In particular, it is preferable to consider small streets in the vicinity of the destination and the starting point. However, consideration of such streets results in a large increase in data throughput, which necessitates an even higher calculation ability.
Acquiring a measurement value such as a travel time (trip time) required for traveling a certain segment of a road from a radio communication infrastructure (VICS (vehicle information system) or an FM multiplex broadcasting) is also known. The trip time is used to figure out a route ensuring an arrival to the destination in the shortest time. Future trends are toward the reduction in intervals of the provision of information from the radio communication infrastructure to provide more accurate information. In order to take advantage of the sequentially sent abundant information, it is desired that the navigation apparatus immediately issue the result of route calculation, which necessitates still faster route calculation processing.
Therefore, although a conventional apparatus already requires excessive time for the route calculation processing, the data throughput is steadily increasing as a result of diversity of route calculation processing. It is therefore an important problem for the navigation apparatus to realize high-speed route calculation processing.
Nevertheless, as described with reference to FIG. 1, the general-purpose CPU hitherto exclusively manages all navigation processing as well as route calculation. As long as such a configuration is employed, it will remain difficult to achieve a high-speed route calculation. Conventional general measures include increasing the clock frequency of the CPU, increasing the speed of the CPU itself by means of a superscalar, and increasing the access speed of the D-RAM. These measures are, however, restricted, and a marked improvement in the calculation speed can not be expected through improvements in such art.